import {EntityId, PageQueryParams} from "kf-web-library";
import {Article, Journal} from "@/services";

export interface AuthorPageQueryParams extends Partial<PageQueryParams> {
  searchText?: string;
  ids?: EntityId[];
}

export interface Author {
  id: string; //主键
  languageType: string; //语言类型 LanguageType
  nameCn: string; //名称中文
  nameEn: string; //名称英文
  nameAbbrCn: string; //缩写 ([姓]不缩写中文
  nameAbbrEn: string; //缩写 ([姓]不缩写)英文
  nameAcronymCn: string; //首字母缩写中文
  nameAcronymEn: string; //首字母缩写英文
  descriptionCn: string; //描述中文
  descriptionEn: string; //描述英文
  addressCn: string; //地址中文
  addressEn: string; //地址英文
  email: string; //邮箱
  bizTag: string; //作者标签
  researchReasCn: string; //学科中文
  researchReasEn: string; //学科英文
  departmentCn: string; //科室中文
  departmentEn: string; //科室英文
  realId: string; //纠错后的id
  createTime: string; //创建时间
  createUserId: number; //${column.comment}
  modifyTime: string; //修改时间
  modifyUserId: number; //${column.comment}
  articleTotal: number; //文章数量
  citedReferencesNum: number; //引用数量
  citingArticleNum: number; //被引用数量
  downloadNum: number; //下载数
  associationJournalList: Journal[]; //关联期刊
  associationAuthorList: Author[]; //关联作者
  lastAritle: Article; //最新文章
}



export interface Author_Create{
  languageType: string; //语言类型 LanguageType
  nameCn: string; //名称中文
  nameEn: string; //名称英文
  nameAbbrCn: string; //缩写 ([姓]不缩写中文
  nameAbbrEn: string; //缩写 ([姓]不缩写)英文
  nameAcronymCn: string; //首字母缩写中文
  nameAcronymEn: string; //首字母缩写英文
  descriptionCn: string; //描述中文
  descriptionEn: string; //描述英文
  addressCn: string; //地址中文
  addressEn: string; //地址英文
  email: string; //邮箱
  bizTag: string; //作者标签
  researchReasCn: string; //学科中文
  researchReasEn: string; //学科英文
  departmentCn: string; //科室中文
  departmentEn: string; //科室英文
  realId: string; //纠错后的id
}


export interface Author_Modify extends Author_Create {
  id: EntityId;
}

export interface Author_Patch extends Partial<Author_Modify> {
  id: EntityId;
}


